Enhancing Search-based Testing with Testability Transformations for Existing APIs
نویسندگان
چکیده
Search-based software testing (SBST) has been shown to be an effective technique generate test cases automatically. Its effectiveness strongly depends on the guidance of fitness function. Unfortunately, a common issue in SBST is so-called flag problem , where landscape presents plateau that provides no search. In this article, we provide series novel testability transformations aimed at providing context commonly used API calls (e.g., strings need converted into valid date/time objects). We also specific helping REST Web Services. implemented our techniques as extension EvoMaster tool generates system-level cases. Experiments nine open-source web services, well industrial service, show improve performance significantly.
منابع مشابه
Testability with Unbounded Testing Strategies
Testability and design for testability are widely discussed practical issues in software engineering, especially in protocol engineering. A number of basic testability qualities were defined formally and independently from any special system model. In this paper we refine these notions on the one hand by a containment order on experiments and on the other hand by a formal distinction between bo...
متن کاملLOT: Logic Optimization with Testability. New transformations for logic synthesis
A new approach to optimize multilevel logic circuits is introduced. Given a multilevel circuit, the synthesis method optimizes its area while simultaneously enhancing its random pattern testability. The method is based on structural transformations at the gate level. New transformations involving EX-OR gates as well as Reed–Muller expansions have been introduced in the synthesis of multilevel c...
متن کاملSearch-based model transformations
Model-Driven Engineering (MDE) is a paradigm that promotes the use of models as the central artifacts for solving problems. In MDE, problem domains are specified using domain-specific modeling languages and models are concrete problem instances that abstract from reality to reduce complexity. At the heart of MDE, model transformations are used to systematically manipulate these problem models t...
متن کاملSearch Based Transformations
Program Transformations are generally written in order to generate better programs. In transformations, we apply a number of simple transformation axioms to parts of a program source code to obtain a functionally equivalent program. The application of these axioms is treated as a search problem and we apply a meta–heuristic search algorithm such as hill climbing to guide the direction of the se...
متن کاملA JVM-based Testing Harness for Improving Component Testability
Software testing is a critical activity in increasing our confidence of a system under test and improving its quality. The key idea for testing a software application is to minimize the number of faults found in the system. The higher the testability of software, the better our chances to reveal these faults. We introduce a new type of testing harness called GannonJVM that improves the testabil...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: ACM Transactions on Software Engineering and Methodology
سال: 2021
ISSN: ['1049-331X', '1557-7392']
DOI: https://doi.org/10.1145/3477271